#include <stdio.h>
#include <unistd.h>    //close函数头文件
#include <sys/types.h> //open函数头文件
#include <sys/stat.h>  //open函数头文件
#include <fcntl.h>     //flags参数头文件
#include <elf.h>
#include <string.h>
#include <errno.h>
#include <stdlib.h>

int main()
{

    pid_t pid = fork();
    if (pid == -1)
    {
        perror(strerror(errno));
        exit(errno);
    }
    if (pid != 0)
        exit(0);
    setsid();

    if (chdir("/") < 0)
    {
        perror(strerror(errno));
        exit(errno);
    }
    close(0);
    int null_fd = open("/dev/null",O_RDWR);
    if (null_fd<0){
        perror(strerror(errno));
        exit(errno);
    }
    dup2(null_fd,1);
    dup2(null_fd,2);
    while(1){
        sleep(1);
    }
}